Floppy disks are digital data storage devices which may be used in computers in order to store large amounts of information. Each floppy disk includes a circular plastic sheet which is impregnated with magnetic particles and which has a central hub hole. The plastic disk is mounted inside a square jacket which encloses the disk, but which allows the circular plastic disk to rotate inside the jacket. The floppy disk may be mounted in a floppy computer disk drive which rotates the plastic disk inside the jacket and which has magnetic recording/reproducing heads for the reading or writing of digital data onto the floppy disk. The floppy disk may be provided with sector holes which are punched through the plastic disk in a circle surrounding the hub hole.
The digital data is stored on the floppy disk in a plurality of circumferential tracks or cylinders. Each track or cylinder is a complete circle and the tracks are arranged side-by-side along the radius of the plastic disk. The format of the floppy disk defines the use which is made (if any) of the sector holes, the type of data encoding modulation, the type of address marks used, and the physical arrangement of the digital data bytes along the length of each track. The format of some floppy disks is called "hard sectored" which indicates that punched sector holes are used in order to allocate the positions of data storage regions around each track on the floppy disk. If punched sector holes are not used, the floppy disk is referred to as having a "soft sectored" format in which the location of data on each track is determined by detecting the contents of the data stored on the track. Digital signals are stored on each track as a modulated mixture of a clock waveform and digital information bits. A variety of coding schemes are used for modulating the clock signals and the information bits for storage on the floppy disk. Three commonly used schemes are known as frequency modulation (FM), modified frequency modulation (MFM), and modified-modified frequency modulation (M2FM). The coding schemes differ in how closely information may be packed together into the disk track. Each track or cylinder on the floppy disk begins with preamble information bytes at the start of the track, a group of sectors arranged one after the other along the length of the track after the preamble, and postamble information at the end of the length of the track, after the sectors. The format of the floppy diskette defines the physical arrangement and meaning of digital bytes in each of the sectors of the track and in the preamble and postamble. For example, each sector typically has predefined areas allocated to synchronization characters, cylinder or track identification numbers, head numbers, and sector numbers. The format of the disk is also concerned with whether both sides of the disk are being used for data storage; i.e., whether the recording/reproducing heads on each side of the disk are being used.
Manufacturers of computer systems or floppy disk drives choose to use formats for floppy disk recordings which appear to be the most advantageous for the particular use to which the computer system or floppy disk drive is to be put. Because the number of manufacturers of computer floppy disk drives and computer systems is large, a large number of different formats of floppy disk drives have been used in the past. As described above, the format of a floppy disk refers to the usage of sector holes, the digital signal encoding scheme, the arrangement and meaning of information bytes stored in each track, and the use of one or two recording/reproducing magnetic heads.
The conventional design of a disk controller for use between a host computer and a floppy disk drive controller is adapted to operate with only a single format. With such a conventional design, floppy disks mounted in the disk drive which do not match with the particular format hard-wired into the controller may not be read from or written onto. Some disk controllers have been provided in the past which allow the host computer to specify to the controller the type of data encoding modulation scheme to be used, and which of the disk recording/reproducing magnetic heads to be used. However, prior controllers are quite inflexible in adapting to the particular arrangement of information bytes stored in each track. During the reading or writing operations from a computer disk drive, the disk controller must locate particular sectors along a track by detecting identification information coded in the bits stored in the track. The location and meaning of the identification bits in the track is dependent upon the particular format of the floppy disk in use. Therefore, prior controllers are generally unable to accommodate differing disk formats inasmuch as the arrangement of the important identification information is not the same for each format.
Prior disk initializer controllers have been made in which format definition program steps are provided by a host computer to random access memory in a controller which utilizes process control program steps in order to control the use of the format definition program. However, such initializer devices are used solely for the purpose of recording predefined identification information for each sector along each track of a diskette, and reading the identification information from the disk in order to verify that the identification information was properly recorded. Such prior initializer designs did not allow the reading or writing of data onto a disk and did not provide any way of copying information from one source disk to a destination disk. Prior initializer designs have used mechanical floppy disk loaders which feed a stack of floppy disks through a disk drive in order to initialize the disks, one after the other, in an automatic fashion. The prior initializer design included a very simplified controller which did not allow the diskette to be used in its intended fashion for the reading and writing of data. Thus the prior initializer controller lacked the capability of controlling a disk drive for copying diskettes, and was unable to place information on diskettes other than sector identification information. One example of a prior initializer design in which floppy diskettes were automatically fed into a disk drive for initialization is the MST model 800 initializer system product made by Media Systems Technology, Inc., the assignee of the invention described herein.
The prior technique most often used for the copying of floppy diskettes is to utilize a floppy disk controller which is hard-wired to accommodate the particular format of the floppy disk to be copied. In such an arrangement, a host computer is connected to a pair of disk drives through a pair of identical controllers so that the disk having the source of information is placed in the first disk drive, and the disk onto which the information is to be copied (the destination disk) is placed in the second disk drive. The host computer is used to transfer the data stored on the disk in the first disk drive to the disk in the second disk drive. Each of the two disk drive controllers ensure that the format for the disks is correct since each of the controllers is particularly adapted for the particular format in use. In such prior designs, disks are loaded manually, one at a time, into the disk drives.